﻿using System;
using System.Drawing;
using System.Windows.Forms;
using EntitiesAndMappings.Entities;
using ProyectoActivos.Const;
using ProyectoActivos.Forms.Mantenimiento;
using ProyectoActivos.Forms.Consultas;
using ProyectoActivos.Forms.Operaciones;

namespace ProyectoActivos.Forms
{
    public partial class FrmInicioActivos : Form
    {
        public Usuario Usuario { set; get; }

        public FrmInicioActivos()
        {
            InitializeComponent();
            //Para maximizar de forma manual.
            this.Location = new Point(0, 0);
            this.Size = Screen.PrimaryScreen.WorkingArea.Size;

            mnuPrincipal.Visible = false;
            var fmrLogin = new FrmLogin { MdiParent = this };
            fmrLogin.Show();
        }

        public MenuStrip MnuPrincipal
        {
            get { return mnuPrincipal; }
        }

        private void artículosToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoArticulo.Activo == null)
            {
                var form = new FrmMantenimientoArticulo { MdiParent = this };
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoArticulo.Activo.Focus();
            }
        }


        private void familiaToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoEntidadGenericaHelper<Familia>.Activo == null)
            {
                var form = new FrmMantenimientoEntidadGenericaHelper<Familia> { MdiParent = this };
                form.CadenaDescriptivaEntidad = Maestro.FAMILIA_CADENA;
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoEntidadGenericaHelper<Familia>.Activo.Focus();
            }
        }

      

        private void condicionDeEquiposToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoEntidadGenericaHelper<CondicionEquipo>.Activo == null)
            {
                var form = new FrmMantenimientoEntidadGenericaHelper<CondicionEquipo> {MdiParent = this};
                form.CadenaDescriptivaEntidad = Maestro.CONDICION_EQUIPOS_CADENA;
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoEntidadGenericaHelper<CondicionEquipo>.Activo.Focus();
            }
        }

        private void lugarToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoEntidadGenericaHelper<Lugar>.Activo == null)
            {
                var form = new FrmMantenimientoEntidadGenericaHelper<Lugar> { MdiParent = this };
                form.CadenaDescriptivaEntidad = Maestro.LUGAR_CADENA;
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoEntidadGenericaHelper<Lugar>.Activo.Focus();
            }
        }

        private void condicionDeTrabajoEquipoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoEntidadGenericaHelper<Lugar>.Activo == null)
            {
                var form = new FrmMantenimientoEntidadGenericaHelper<Lugar> { MdiParent = this };
                form.CadenaDescriptivaEntidad = Maestro.LUGAR_CADENA;
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoEntidadGenericaHelper<Lugar>.Activo.Focus();
            }
        }

        private void unidadDeMedidaToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoEntidadGenericaHelper<UnidadMedida>.Activo == null)
            {
                var form = new FrmMantenimientoEntidadGenericaHelper<UnidadMedida> { MdiParent = this };
                form.CadenaDescriptivaEntidad = Maestro.UNIDAD_MEDIDA_CADENA;
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoEntidadGenericaHelper<UnidadMedida>.Activo.Focus();
            }
        }

        private void tipoDeMantenimientoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoEntidadGenericaHelper<TipoMantenimiento>.Activo == null)
            {
                var form = new FrmMantenimientoEntidadGenericaHelper<TipoMantenimiento> { MdiParent = this };
                form.CadenaDescriptivaEntidad = Maestro.TIPO_MANTENIMIENTO_CADENA;
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoEntidadGenericaHelper<TipoMantenimiento>.Activo.Focus();
            }
        }

        private void marcasToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoEntidadGenericaHelper<Marca>.Activo == null)
            {
                var form = new FrmMantenimientoEntidadGenericaHelper<Marca> { MdiParent = this };
                form.CadenaDescriptivaEntidad = Maestro.MARCA_CADENA;
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoEntidadGenericaHelper<Marca>.Activo.Focus();
            }
        }

        private void subFamiliaToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoSubFamilia.Activo == null)
            {
                var form = new FrmMantenimientoSubFamilia { MdiParent = this };
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoSubFamilia.Activo.Focus();
            }
        }

        private void proveedorToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoProveedor.Activo == null)
            {
                var form = new FrmMantenimientoProveedor { MdiParent = this };
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoProveedor.Activo.Focus();
            }
        }

        private void almacenToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoAlmacen.Activo == null)
            {
                var form = new FrmMantenimientoAlmacen { MdiParent = this };
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoAlmacen.Activo.Focus();
            }
        }

        private void consultaDeArtìculosToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmConsultaArticulos.Activo == null)
            {
                var form = new FrmConsultaArticulos { MdiParent = this };
                form.Visible = true;

            }
            else
            {
                FrmConsultaArticulos.Activo.Focus();
            }
        }

        private void tipoDeMovimientoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoTipoMovimiento.Activo == null)
            {
                var form = new FrmMantenimientoTipoMovimiento { MdiParent = this };
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoTipoMovimiento.Activo.Focus();
            }
        }

        private void periodoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoPeriodo.Activo == null)
            {
                var form = new FrmMantenimientoPeriodo { MdiParent = this };
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoPeriodo.Activo.Focus();
            }
        }

        private void proveedoresToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmConsultaProveedores.Activo == null)
            {
                var form = new FrmConsultaProveedores { MdiParent = this };
                form.Visible = true;

            }
            else
            {
                FrmConsultaProveedores.Activo.Focus();
            }
        }

        private void salidasToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmSalida.Activo == null)
            {
                var form = new FrmSalida { MdiParent = this };
                form.Visible = true;

            }
            else
            {
                FrmSalida.Activo.Focus();
            }
        }

        private void proyectoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoEntidadGenericaHelper<Proyecto>.Activo == null)
            {
                var form = new FrmMantenimientoEntidadGenericaHelper<Proyecto> { MdiParent = this };
                form.CadenaDescriptivaEntidad = Maestro.PROYECTO_CADENA;
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoEntidadGenericaHelper<Proyecto>.Activo.Focus();
            }
        }

        private void loteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmMantenimientoEntidadGenericaHelper<Lote>.Activo == null)
            {
                var form = new FrmMantenimientoEntidadGenericaHelper<Lote> { MdiParent = this };
                form.CadenaDescriptivaEntidad = Maestro.LOTE_CADENA;
                form.Visible = true;

            }
            else
            {
                FrmMantenimientoEntidadGenericaHelper<Lote>.Activo.Focus();
            }
        }

        private void ingresosToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmIngreso.Activo == null)
            {
                new FrmIngreso {MdiParent = this, Visible = true};
            }
            else
            {
                FrmIngreso.Activo.Focus();
            }
        }

        private void tareoToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            if (FrmTareo.Activo == null)
            {
                new FrmTareo { MdiParent = this, Visible = true };
            }
            else
            {
                FrmTareo.Activo.Focus();
            }
        }

        private void tareoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmConsultaTareo.Activo == null)
            {
                new FrmConsultaTareo { MdiParent = this, Visible = true };
            }
            else
            {
                FrmConsultaTareo.Activo.Focus();
            }
        }

        private void consultaDeMantenimientoDeArtículosToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmConsultaMantenimientoArticulos.Activo == null)
            {
                new FrmConsultaMantenimientoArticulos { MdiParent = this, Visible = true };
            }
            else
            {
                FrmConsultaMantenimientoArticulos.Activo.Focus();
            }
        }

        private void consultaDeMovimientoDeArtículosToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmConsultaMovimientoArticulos.Activo == null)
            {
                new FrmConsultaMovimientoArticulos { MdiParent = this, Visible = true };
            }
            else
            {
                FrmConsultaMovimientoArticulos.Activo.Focus();
            }
        }

        private void consultaEntregaPersonalToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmConsultaEntregaAPersonal.Activo == null)
            {
                new FrmConsultaEntregaAPersonal { MdiParent = this, Visible = true };
            }
            else
            {
                FrmConsultaEntregaAPersonal.Activo.Focus();
            }
        }

        private void consultaDeInventarioFinDeMesToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmConsultaInventarioFinMes.Activo == null)
            {
                new FrmConsultaInventarioFinMes { MdiParent = this, Visible = true };
            }
            else
            {
                FrmConsultaInventarioFinMes.Activo.Focus();
            }
        }

        private void inventarioFinDeMesDetalladoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmConsultaInventarioFinMesDetalle.Activo == null)
            {
                new FrmConsultaInventarioFinMesDetalle { MdiParent = this, Visible = true };
            }
            else
            {
                FrmConsultaInventarioFinMesDetalle.Activo.Focus();
            }
        }

        private void consultaDeInventarioFechaActualToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmConsultaInventarioFechaActualAcumulado.Activo == null)
            {
                new FrmConsultaInventarioFechaActualAcumulado { MdiParent = this, Visible = true };
            }
            else
            {
                FrmConsultaInventarioFechaActualAcumulado.Activo.Focus();
            }
        }

        private void salirToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

        private void inventarioFechaActualDetalladoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (FrmConsultaInventarioFechaActual.Activo == null)
            {
                new FrmConsultaInventarioFechaActual { MdiParent = this, Visible = true };
            }
            else
            {
                FrmConsultaInventarioFechaActual.Activo.Focus();
            }
        }

    }
}
